﻿using Fadada.FASC.SDK.DotNetCore.Attributes;
using Newtonsoft.Json;

namespace Fadada.FASC.SDK.DotNetCore.Model
{
    [RemoteService("/sign-task/field/get-url", "POST")]
    public class SignTaskFieldGetUrl:SignTaskIdInfo
    {
        /// <summary>
        /// 该页面的实际操作人的openUserId。
        /// 该用户在访问页面内容时需完成帐号注册登录和授权。如果发起方主体是企业，则还需成为该企业的成员
        /// </summary>
        [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "openUserId", Required = Required.Always)]
        public string OpenUserId { get; set; }

        /// <summary>
        /// 实际操作人个人身份信息。可以指定，也可以不指定。若指定身份信息：
        /// 如果操作人未实名绑定，则实名过程中不允许修改。
        /// 如果操作人已实名绑定，则强制匹配指定的身份信息。
        /// </summary>
        [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "userIdentInfo", Required = Required.AllowNull)]
        public UserIdentInfo UserIdentInfo { get; set; }

        /// <summary>
        /// 实际操作人补充信息。
        /// </summary>
        [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "userInfoExtend", Required = Required.AllowNull)]
        public UserInfoExtend UserInfoExtend { get; set; }

        /// <summary>
        /// 重定向地址，控件设置操作完成后重定向跳转到该地址，并且附带上参数。
        /// 注意：只有eUrl才会重定向。
        /// </summary>
        [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "redirectUrl", Required = Required.AllowNull)]
        public string RedirectUrl { get; set; }
    }
}